package com.hbnu.iostream;

import java.io.File;

/**
 * 需求：遍历指定文件夹下所有的文件，包括子文件夹下的文件
 *
 * 扩展：获取指定文件夹下所有以.doc结尾的文件
 *
 * @author kittychen
 * @since 2025-10-10 17:21
 */
public class FileOperator04 {
    public static void main(String[] args) {
        String path = "E:" + File.separator + "2311";

        File file = new File(path);

        printAllFiles(file);
    }

    private static void printAllFiles(File file) {
        if (file.isDirectory()) {  // file是一个文件夹
            File[] files = file.listFiles();   // 获取文件夹下所有的文件或文件夹
            if (files != null) {  // 文件夹内容不为空
                for (File file1 : files) {  // 高级for循环（增强for循环）快捷方式：iter + 回车
                    printAllFiles(file1);  // 递归调用
                }
            }
        } else {
            // System.out.println(file.getAbsolutePath());

            if (file.getName().endsWith(".doc")) {  // 判断文件名是否以.doc结尾
                System.out.println(file.getAbsolutePath());
            }
        }
    }
}
